﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MaxLeaf.Platform.Contract;
using MaxLeaf.Platform.BLLImplementation;
using CommonsLib.Utility;
using MaxLeaf.Platform.DataContract;
using CommonsLib.Settings;
using MaxLeaf.Platform.Functions;

namespace MaxLeaf.Platform.BLLProxy
{
    public class SCPmLogBLLProxy : BaseBLLProxy, ISCPmLog 
    {
        ISCPmLog _bll;
        private ISCPmLog BLL
        {
            get
            {                
                return _bll;
            }
        }
        public SCPmLogBLLProxy()
            : base()
        {
            switch ( Access_Mode )
            {

                case MaxLeaf.Platform.Commons.Const.ACCESS_Direct:
                    {
                        _bll = new SCPmLogBLL ();
                        break;
                    }

                case MaxLeaf.Platform.Commons.Const.ACCESS_IIS:
                    {
                        _bll = new SCPmLogBLLWCFClient(this.WCF_Configs);
                        break;
                    }


                default:
                    {
                        throw new MaxLeaf.Platform.Commons.MaxLeafException(MaxLeaf.Platform.Commons.Const.EXCEPTION_MESSAGE_INVALID_ACCESSMODE_CONFIG);

                    }
            }
        }


        #region ISCPmLog 成员
        public SCPmLogDataModel  Add(SCPmLogDataModel model)
        {
            return BLL.Add(model);
        }

        #endregion

        #region ISCPmLog 成员

        public SCPmLogDataModel Select(SCPmLogDataModel model, int intKeyValue)
        {
            throw new NotImplementedException();
        }

        public SCPmLogDataModel Update(SCPmLogDataModel model)
        {
            throw new NotImplementedException();
        }

        public SCPmLogDataModel Delete(SCPmLogDataModel model)
        {
            throw new NotImplementedException();
        }

        #endregion

        #region ISCPmLog 成员

        SCPmLogDataModel ISCPmLog.Select(SCPmLogDataModel model, int intKeyValue)
        {
            throw new NotImplementedException();
        }

        SCPmLogDataModel ISCPmLog.Add(SCPmLogDataModel model)
        {
            throw new NotImplementedException();
        }

        SCPmLogDataModel ISCPmLog.Update(SCPmLogDataModel model)
        {
            throw new NotImplementedException();
        }

        SCPmLogDataModel ISCPmLog.Delete(SCPmLogDataModel model)
        {
            throw new NotImplementedException();
        }

        bool ISCPmLog.UpdateDetail(SCPmLogDataModel model, string strOOO)
        {
            throw new NotImplementedException();
        }

        #endregion
    }
}
